﻿//using System;
//using System.Collections.Generic;
//using System.Linq;
//using System.Text;
//using System.Threading.Tasks;
//using UCL.Powersource.Analysis;

//namespace UCL.Powersource.Mock
//{

//    public class DummyStatisticManagerQueueItem : IStatisticManagerQueueItem
//    {

//        internal DummyStatisticManagerQueueItem(IStatisticManagerQueue owner, IStatistic statistic, ITfsTeamProjectConfiguration pr, ITimeFrame tf, bool forceRecalculate)
//        {
//            Statistic = statistic;
//            TfsTeamProjectConfiguration = pr;
//            TimeFrame = tf;
//            ForceRecalculate = forceRecalculate;
//            Status = QueuedItemStatus.New;
//            Owner = owner;
//        }
//        public event EventHandler<QueuedItemChangedEventArgs> Changed;

//        public event EventHandler Completed;

//        public Exception ComputationException
//        {
//            get { return null; }
//        }

//        public bool ForceRecalculate
//        {
//            get; set; 
//        }

//        public bool HasTerminatedNormally
//        {
//            get; set;
//        }

//        public IStatisticManagerQueue Owner
//        {
//            get;
//            set;
//        }

//        public Analysis.IStatistic Statistic
//        {
//            get;
//            set;
//        }

//        public QueuedItemStatus Status
//        {
//            get;set;
//        }

//        public ITfsTeamProjectConfiguration TfsTeamProjectConfiguration
//        {
//            get;
//            set;
//        }

//        public ITimeFrame TimeFrame
//        {
//            get;
//            set;
//        }
//    }

//    public class DummyStatisticManagerQueue : IStatisticManagerQueue
//    {
//        public IStatisticManagerQueueItem EnqueueStatisticRecalculationAsync(Analysis.IStatistic statistic, ITfsTeamProjectConfiguration teamProject, ITimeFrame timeframe, bool forceRecalculate)
//        {
//            return null;
//        }

//        public event EventHandler<StatisticManagerQueueUpdatedEventArgs> StatisticManagerQueueUpdated;

//        public bool IsCalculating
//        {
//            get { throw new NotImplementedException(); }
//        }

//        public string CurrentAction
//        {
//            get { throw new NotImplementedException(); }
//        }

//        public int WaitingStatsCount
//        {
//            get { throw new NotImplementedException(); }
//        }

//        public int FinishedStatsCount
//        {
//            get { throw new NotImplementedException(); }
//        }

//        public void RaisePropertyChanged(string propertyName)
//        {
//            throw new NotImplementedException();
//        }

//        public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;

//        public void Initialize()
//        {
//            throw new NotImplementedException();
//        }

//        public bool IsInitialized
//        {
//            get { throw new NotImplementedException(); }
//        }

//        public bool IsDisposed
//        {
//            get { throw new NotImplementedException(); }
//        }

//        public void Dispose()
//        {
//            throw new NotImplementedException();
//        }
//    }
//}
